﻿using System;
using System.Collections.Generic;
using System.Linq;

namespace SocialLearning
{
    public class UAC_BasicDetails : I_UAC_BasicDetails
    {
        #region Private Fields

        public int uid { get; set; }
        private string firstname;
        private string lastname;
        private UAC_Gender gender;
        private string id;
        private string email;
        private string contact;
        private string userType;
        private string familyID;

        #endregion

        #region Properties

        /// <summary>
        /// Gets or sets the firstname.
        /// </summary>
        /// <value>
        /// The firstname.
        /// </value>
        public string Firstname
        {
            get
            {
                return firstname;
            }
            set
            {
                firstname = value;
            }
        }

        /// <summary>
        /// Gets or sets the lastname.
        /// </summary>
        /// <value>
        /// The lastname.
        /// </value>
        public string Lastname
        {
            get
            {
                return lastname;
            }
            set
            {
                lastname = value;
            }
        }

        /// <summary>
        /// Gets or sets the gender.
        /// </summary>
        /// <value>
        /// The gender.
        /// </value>
        public UAC_Gender Gender
        {
            get
            {
                return gender;
            }
            set
            {
                gender = value;
            }
        }

        /// <summary>
        /// Gets or sets the ID.
        /// </summary>
        /// <value>
        /// The ID.
        /// </value>
        public string ID
        {
            get
            {
                return id;
            }
            set
            {
                id = value;
            }
        }

        /// <summary>
        /// Gets or sets the email.
        /// </summary>
        /// <value>
        /// The email.
        /// </value>
        public string Email
        {
            get
            {
                return email;
            }
            set
            {
                email = value;
            }
        }

        /// <summary>
        /// Gets or sets the contact number.
        /// </summary>
        /// <value>
        /// The contact number.
        /// </value>
        public string ContactNumber
        {
            get { return contact; }
            set { contact = value; }
        }

        /// <summary>
        /// Gets or sets the type of the user.
        /// </summary>
        /// <value>
        /// The type of the user.
        /// </value>
        public string UserType
        {
            get { return userType; }
            set { userType = value; }
        }

        /// <summary>
        /// Gets or sets the familty ID.
        /// </summary>
        /// <value>
        /// The familty ID.
        /// </value>
        public string FamiltyID
        {
            get { return familyID; }
            set { familyID = value; }
        }

        #endregion

        #region Constructors

        /// <summary>
        /// Initializes a new instance of the <see cref="UAC_BasicDetails"/> class.
        /// </summary>
        /// <param name="firstname">The firstname.</param>
        /// <param name="lastname">The lastname.</param>
        /// <param name="gender">The gender.</param>
        /// <param name="id">The id.</param>
        /// <param name="email">The email.</param>
        /// <param name="contact">The contact number.</param>
        /// <param name="type">The user type.</param>
        /// <param name="famID">The family ID.</param>
        public UAC_BasicDetails(string firstname, string lastname, UAC_Gender gender, string id, string email, string contact, string type, string famID)
        {
            this.firstname = firstname;
            this.lastname = lastname;
            this.gender = gender;
            this.id = id;
            this.email = email;
        }

        #endregion

        #region Engine Implementation

        //public string SerializeObject()
        //{
        //    return string.Format("{0};{1};{2};{3};{4};{5};{6};{7};{8};{9}", uid, firstname, lastname, gender, id, email, contact, userType, familyID);
        //}

        #endregion
    }
}
